In image rendering in computer graphics system, it is often desirable to render point-based geometry directly, e.g. without triangulation. However, a challenge exists in that unlike in triangle-based graphics, both the exact position and color of a surface within a scene are defined as a weighted average of nearby point samples. This makes it difficult to determine which surface, if any, a query ray may hit. Additionally, it is difficult to determine the visibility relationships among the point samples. Current solutions to these problems choose to ignore this difficulty and limit themselves to simple scenarios where point density is almost uniform and the scenes consist of a few simple objects. Unfortunately, these solutions fail in more complex scenes or when point density varies rapidly. However, a well-known solution is Räsänen's method. While Räsänen's method works well in a majority of cases, it is often too eager to merge point samples to the same surface and causes unpredictable light leaks between surfaces which may cause unwanted image artifacts.